perm filename ROMITL.MF[1,3] blob sn#549040 filedate 1980-12-10 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00009 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	% This file defines characters common to roman and italic text fonts
C00003 00003	"The Scandinavian letter o-slash"
C00004 00004	"Closing quotes"
C00005 00005	"Hyphen"
C00006 00006	"The Scandinavian letter O-slash"
C00007 00007	"Opening quotes"
C00008 00008	"En dash"
C00009 00009	"Em dash"
C00011 ENDMK
C⊗;
% This file defines characters common to roman and italic text fonts
% that do not appear in non-ligature fonts.
% Character codes \¬040, \¬042, \¬055, \¬100, \¬134, \¬136, \¬137 are used.
"The Scandinavian letter o-slash";
if ligs≠2:
	call charbegin('040,9,0,0,px+.5pd,.5pd,(px+.5pd).slant+.5(pw-.5[pwi,pwii]));
	hpen; x1=r-x1;	% axis of left-right symmetry
	new w99; w99=round .5[w1,w2];
	if fixwidth=0: lft99x2=round .5u;
	else: lft99x2=round 1.5u;
	fi;
	x1-x2=x3-x1; top0y1=m+oo; bot0y2=-oo; y2=y3;
	call `a darc(1,2,w99);	% left part of bowl
	call `b darc(1,3,w99);	% right part of bowl
	x4=x2; x5=x3; y4=-.5d; y5=m+.5d;
	w0 draw 4..5;	% diagonal
fi.
"Closing quotes";
call charbegin('042,9,0,0,ph,0,2/3[px,ph].slant+.5pw-2.5pu);
% There is rotational symmetry with respect to opening quotes.
cpen; top3y1=top6y2=h; top6y4=m; y3=2/3[y4,y2];
x1=x2=good3 1.5u; x3=good0(x1+u+eps); x4=x1-.5u-eps;
x11-x1=x12-x2=x13-x3=x14-x4=round 3.5u;
y11=y1; y12=y2; y13=y3; y14=y4;
w3 draw 1;	% left bulb
draw 11;	% right bulb
hpen; w0 draw 2{1,0}..3{0,-1}..4{3(x4-x3),y4-y3};	% left tail
draw 12{1,0}..13{0,-1}..14{3(x14-x13),y14-y13}.	% right tail
lig `': `' = '042;
"Hyphen";
call charbegin('055,fixwidth[6,9],0,0,px,0,.5px.slant-.5pu);
vpen; y1=y2=.5m;
if fixwidth=0: lft7x1=0; rt7x2=r-u;
else: lft7x1=1.5u; x2=r-x1;
fi;
w7 draw 1..2.	% bar
"The Scandinavian letter O-slash";
call charbegin('100,14,0,0,phh+pb,pb,.5phh.slant-.5pu);
hpen; new w99; w99=round .5[w4,w5];
if fixwidth≠0: new save; save=sqrttwo;
	new sqrttwo; sqrttwo=sqrt save; % super-superellipse
	lft99x2=round 1.5u;
else: lft99x2=round u;
fi;
x1=r-x1;	% axis of left-right symmetry
top0y1=hh+o;
bot0y2=-o; y3=y2; x3=r-x2;
call `a darc(1,2,w99);	% left part of bowl
call `b darc(1,3,w99);	% right part of bowl
if fixwidth≠0: new sqrttwo; sqrttwo=save;
fi;
top0y4=hh+b; bot0y5=-b; rt0x4=lft5x3; lft0x5=rt0x2;
w0 draw 4..5;	% diagonal
fi.
"Opening quotes";
call charbegin('134,9,0,0,ph,0,ph.slant+.5pw-.5pu);
% There is rotational symmetry with respect to closing quotes.
cpen; bot3y1=bot6y2; top6y4=h; y3=2/3[y4,y2]; y2-y4=m-h;
x1=x2=good3 4u; x3=good0(x1-u-eps); x4=x1+.5u+eps;
x11-x1=x12-x2=x13-x3=x14-x4=round 3.5u;
y11=y1; y12=y2; y13=y3; y14=y4;
w3 draw 1;	% left bulb
draw 11;	% right bulb
hpen; w0 draw 2{-1,0}..3{0,1}..4{3(x4-x3),y4-y3};	% left tail
draw 12{-1,0}..13{0,1}..14{3(x14-x13),y14-y13}.	% right tail
lig ``: `` = '134;
"En dash";
call charbegin('136,9,0,0,px,0,.5px.slant+.5pu);
hpen; lft0x1=0; rt0x2=r; y1=y2=.5m;
w0 draw 1..2.	% bar
lig `-: `- = '136;
"Em dash";
call charbegin('137,18,0,0,px,0,.5px.slant+.5pu);
hpen; lft0x1=0; rt0x2=r; y1=y2=.5m;
w0 draw 1..2.	% bar
lig '136: `- = '137;